package com.itheima.service.db;

import com.itheima.domain.UmsRole;
import com.itheima.vo.PageBeanVo;

import java.util.List;

public interface UmsRoleService {

    //根据Id查询
    UmsRole findById(Long roleId);

    // 获取所有角色
    List<UmsRole> findByAllList();

    // 获取指定用户的角色
    List<UmsRole> findByRoleList(Long adminId);

    // 给用户分配角色
    void allocationRole(Long adminId, List<Long> roleIds);

    // 根据角色名称分页获取角色列表
    PageBeanVo findByList(Integer pageNum, Integer pageSize, String keyword);

    /**
     * 修改角色
     * @param id
     * @param umsRole
     */
    void roleUpdate(Long id, UmsRole umsRole);

    /**
     * 批量删除角色
     * @param ids
     */
    Integer delete(List<Long> ids);

    /**
     * 添加角色
     * @param umsRole
     */
    void create(UmsRole umsRole);

    /**
     * 给角色分配资源
     * @param resourceIds
     * @param roleId
     */
    void allocResource(List<Integer> resourceIds, Long roleId);

    /**
     * 修改角色状态
     * @param id
     * @param status
     */
    void updateStatus(Long id, Integer status);
}
